

import java.util.LinkedHashMap;
import java.util.Map;



/*
* 这个方法用不到：
* 这个题一般是面试题会问到，所以一般不用封装好的东西，而且设计到底层的东西
* */
// 这就是lru固定代码，没有可复用性，只能用在lru
class LRUCache extends LinkedHashMap<Integer, Integer> {
    private int capcity;
    public LRUCache(int capacity) {
        super(capacity, 0.75F, true/*是否启动获得“老元素”*/);  // 这个构造函数专门是为LRU准备的
        this.capcity = capacity;
    }

    public int get(int key) {
        return super.getOrDefault(key, -1);

    }

    public void put(int key, int value) {
        super.put(key, value);
    }

// 什么时候删除“老元素”
    @Override
    protected boolean removeEldestEntry(Map.Entry eldest) {
        return size() > capcity;
    }
}


// 希望你开心点，一起加油！
/*
     _--_  _--_
    -    \/    -
     -        -
       -    -
         -
*/
